package org.ws.task.item;

import org.ws.task.model.TaskConfig;

public class TaskInstance<T> {
    private Task task;
    private TaskConfig taskConfig;
    private ItemLeaderProvider<T> itemLeaderProvider;
    private ItemWorkerProcessor<T> itemWorkerProcessor;
    private ItemLeaderCommit<T> itemLeaderCommit;

    public TaskInstance() {
        // nothing
    }

    public Task getTask() {
        return task;
    }

    public void setTask(Task task) {
        this.task = task;
    }

    public TaskConfig getTaskConfig() {
        return taskConfig;
    }

    public void setTaskConfig(TaskConfig taskConfig) {
        this.taskConfig = taskConfig;
    }

    public ItemLeaderProvider<T> getItemLeaderProvider() {
        return itemLeaderProvider;
    }

    public void setItemLeaderProvider(ItemLeaderProvider<T> itemLeaderProvider) {
        this.itemLeaderProvider = itemLeaderProvider;
    }

    public ItemWorkerProcessor<T> getItemWorkerProcessor() {
        return itemWorkerProcessor;
    }

    public void setItemWorkerProcessor(ItemWorkerProcessor<T> itemWorkerProcessor) {
        this.itemWorkerProcessor = itemWorkerProcessor;
    }

    public ItemLeaderCommit<T> getItemLeaderCommit() {
        return itemLeaderCommit;
    }

    public void setItemLeaderCommit(ItemLeaderCommit<T> itemLeaderCommit) {
        this.itemLeaderCommit = itemLeaderCommit;
    }

}
